Nella grande scena di un programma C++, gli oggetti sono come attori. Alcuni rimangono sul palco per tutto lo spettacolo, ma la maggior parte—i oggetti locali—sono entità effimere che compaiono in una sola scena e scompaiono per sempre. Questa lezione stabilisce la differenza fondamentale tra la visibilità (ambito) e la sua esistenza (durata).
1. Ambito Lessicale vs. Durata dell'Esecuzione
L' ambito di un nome è una proprietà temporale di compilazione: è la regione del testo del programma in cui un nome è utilizzabile. Viceversa, durata è una proprietà temporale di esecuzione: la durata durante la quale l'oggetto occupa un indirizzo di memoria fisico.
2. Oggetti Automatici
Gli oggetti che esistono solo durante l'esecuzione di un blocco sono oggetti automatici. Vengono creati quando il controllo passa attraverso la loro definizione (int n = 0;) e distrutti quando viene raggiunto il cancelletto chiuso (}) è raggiunto. I parametri sono in pratica variabili locali inizializzate con gli argomenti.